Динамічні структури даних.

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра інформаційних систем та мереж

Інформація про роботу

Рік:
2024
Тип роботи:
Лабораторна робота
Предмет:
Інші
Група:
КН

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ „ЛЬВІВСЬКА ПОЛІТЕХНІКА” Кафедра інформаційних систем та мереж Лабораторна робота №11 на тему: Динамічні структури даних. Львів-2008р. Назва роботи: Динамічні структури даних. Мета роботи: Вивчити способи створення динамічних структур даних (списків, стеків, дерев, ...) та виконання операцій над ними. Завдання лабораторної роботи: Згідно з індивідуальним завданням розробити необхідні структури даних. Сформувати структури даних у динамічній пам’яті та проініціалізувати їх введеними з клавіатури значеннями (див. табл. 14). При відсутності в умові завдання наперед заданої кількості елементів спискових структур в якості ознаки завершення їх формування вибрати імітацію кінця файла введення з клавіатури (натискування клавіш Ctrl/Z), або ввести деяке обумовлене число чи символ. Виконати над елементами списку операції перетворення (формування, включення, виключення, пошук, виведення елементів), необхідні для розв’язування задачі. Операції над списком оформити у вигляді окремих функцій. Перед завершенням роботи програми звільнити виділену для списку динамічну пам’ять. Текст програми: #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <string.h> typedef struct stack1 { char c1[5]; stack1 *dali; }; typedef struct stack2 { char c2; stack2 *dali; }; void main() {stack1 *st1,*el1; stack2 *st2,*el2; char d[15],d2[15],*p,b; int i; clrscr(); gets(d); strcpy(d2,d); //------------------- p=strtok(d,"+-/*()="); st1=NULL; st2=NULL; //puts(p); el1=(stack1*)calloc(1,sizeof(stack1)); el1->dali=st1; st1=el1; strcpy(el1->c1,p); while(p!=NULL) {p=strtok(NULL,"+-/*()="); el1=(stack1*)calloc(1,sizeof(stack1)); el1->dali=st1; st1=el1; strcpy(el1->c1,p); } //------------------- for(i=0; i<strlen(d2)+1;i++) if(strchr("+-/*()=",d2[i])!=NULL) { b=d2[i]; el2=(stack2*)calloc(1,sizeof(stack2)); el2->dali=st2; st2=el2; el2->c2=b; } //========================= puts("\nCтек 1:"); do { st1=el1->dali; el1=st1; printf("%s ",st1->c1); } while(st1->dali!=NULL); int j=0; puts("\n\nCтек 2:"); do { st2=el2->dali; el2=st2; printf("%c ",st2->c2); } while(st2->dali!=NULL); getch(); }   Результати виконання програми:  Висновки: Я вивчив способи створення динамічних структур даних (списків, стеків, дерев, ...) та виконання операцій над ними. Блок-схеми: 
Антиботан аватар за замовчуванням

05.12.2012 19:12

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини